500 REM DATAFILE 2.9 SUBPROGRAM DFREPORT BY M. KONSHAK 502 REM-FOR 1525,MPS801,GEMINI10X,OKIDATA92A,EPSONRX80 AND OTHERS 504 OPEN4,4:IFPW=0THENPW=80 506 GOTO614 508 REM LOAD SUBPROGRAMS 510 PRINT"[147] LOADING MAIN PROGRAM" 512 LOAD"DATAFILE",8 514 PRINT"[147] LOADING MAILING LABEL SUBPROGRAM" 515 LOAD"DFMAIL",8 516 PRINT"[147] LOADING CALCULATIONS SUBPROGRAM" 517 LOAD"DFCALC",8 518 REM QUIT ROUTINE 520 PRINT"[147]QUITTING NOW WILL ERASE CURRENT DATA" 522 PRINT"ARE YOU SURE YOU WANT TO QUIT?":PRINT" Y[146] OR N[146] ? 524 [161]A$:[139]A$[178]""[167]524 526 [139]A$[178]"N"[167]614 528 [139]A$[178]"Y"[167]532 530 [137]524 532 [160]4:[153]"LOADSUBPROGRAM TERMINATED" 534 [153]"DATAFILEWAIT BY MIKE KONSHAK (C)1983":[128] 536 [143] SEARCH ROUTINES MENU 538 A0[178]0:[153]"LOAD  PRINT OPTIONS MENU " 540 [153]" AWAITLL RECORDS IN FILE 542 PRINT" S[146]ELECT INDIVIDUAL RECORD 544 [153]" FWAITIND RECORDS WITH COMMON FIELDS 546 PRINT" E[146]XIT TO MAIN MENU 548 [153]"POSITION PAPER IN PRINTER AT TOP OF PAGE" 550 [153]"PRINTER MAY STOP DURING PRINTING IF THE" 552 [153]"COMPUTER NEEDS TO REALLOCATE MEMORY." 554 [153]"  PRESS THE APPROPRIATE KEY " 556 [161]C$:[139]C$[178]""[167]556 558 [139]C$[178]"A"[167]606 560 [139]C$[178]"S"[167]FL[178]0:[137]570 562 [139]C$[178]"F"[167]580 564 [139]C$[178]"E"[167]614 566 [137]556 568 [143] SELECT ONE RECORD 570 [133]"LOADPRINT WHICH RECORD (0WAIT TO EXIT)";I$:I[178][197](I$):[139]I[178]0[167]890 572 [139]I[177]X[167][153]"NO SUCH RECORD EXISTS, TRY AGAINONONON":[137]570 574 [139]K[178]2[175]FL[178]0[167][141]810:[141]824:[141]842:[141]888:FL[178]1:[137]570 575 [139]K[178]2[175]FL[178]1[167][141]842:[141]888:[137]570 576 [141]798:[152]4,B1$:[137]538 578 [143] FIND RECORD (SEARCH) 580 [153]"LOAD  FIND RECORDS WITH COMMON ITEMS " 582 [129]N[178]1[164]F:[153]" ";N;"WAIT";F$(N):[130]N 584 [133]"WHICH FIELD IS TO BE SEARCHED";SF 586 [139]SF[179]0[176]SF[177]F[167][153]"ONONON":[137]584 588 [153]"ENTER COMMON ITEMWAIT":[153]"(THE ENTIRE STRING IS NOT REQUIRED)" 590 [153]"";F$(SF);"WAIT ";:[133]T$ 592 [139]K[178]2[167][141]810:[141]824 594 [129]I[178]1[164]X 596 [153]"SEARCHING RECORD";I;"ONON" 598 [139]T$[178][200](REC$(K%(I),SF),[195](T$))[167][145]K[141]798,842:[141]888 600 [130]I 602 [137]890 604 [143] PRINT ALL RECORDS 606 [153]"LOAD PRINTING HEADING":[139]K[178]2[167][141]810:[141]824 608 [129]I[178]1[164]X:[153]"ON PRINTING RECORD #";I:[145]K[141]798,842:[141]888:[130]I 610 [137]890 612 [143] PRINT RECORDS MENU 614 [153]"LOAD  REPORT PRINTOUT MENU " 616 [153]" LWAITIST RECORDS UNFORMATTED" 618 [153]" PWAITRE-DEFINED FORMAT OR" 620 [153]" DWAITEFINE NEW FORMAT" 622 [153]" EWAITXIT TO MAIN PROGRAM OR" 624 [153]" MWAITAILING LABEL PROGRAM" 625 [143] ?" CWAITALCULATED REPORTS PROGRAM" 626 [153]" QWAITUIT PROGRAM" 628 [153]"  PRESS THE APPROPRIATE KEY " 630 [161]C$:[139]C$[178]""[167]630 632 [139]C$[178]"L"[167]K[178]1:[137]538 634 [139]C$[178]"P"[167]K[178]2:[137]766 636 [139]C$[178]"E"[167][160]4:[137]510 638 [139]C$[178]"M"[167][160]4:[137]514 639 [143] IFC$="C"THENCLOSE4:GOTO516 640 [139]C$[178]"D"[167]K[178]2:[137]646 642 [139]C$[178]"Q"[167]520 644 [137]630 646 [153]"LOADREPORT SIZEWAIT UP TO 136 CHARACTERS WIDE." 648 [153]"PRINTER MUST BE INITIALIZED FOR WIDTHS" 650 [153]"GREATER THAN 80 CHARACTERS. CHECK YOUR" 652 [153]"PRINTER MANUAL TO HOW TO PRINT 136 CHARACTERS" 654 [153]"NUMBER OF CHARACTERS?":[153]"? CMDCMDCMD";PW:[133]"ON";PW 656 [139]PW[177]136[167]654 658 [153]"LOADTITLE FORMATWAIT UP TO 4 TITLE LINES OF" 660 [153]"INFORMATION AT THE TOP OF THE FORM." 662 [153]"NUMBER OF LINES?":[153]"? CMDCMDCMD";NL:[133]"ON";NL:[139]NL[177]4[167]662 664 [129]J[178]1[164]NL:[153]"TITLE #";J:[153]"? > CMDCMDCMD";TT$(J) 666 [139][195](TT$(J))[177]37[167][153]"ON"; 668 [133]"ON";TT$(J):[139]TT$(J)[178]""[167]TT$(J)[178]">" 670 [130]J 672 [153]"LOADCOLUMN FORMATWAIT UP TO 8 COLUMNS WITH 2" 673 [153]"SPACES BETWEEN COLUMNS" 674 [153]"NUMBER OF COLUMNS?":[153]"? CMDCMDCMD";NC:[133]"ON";NC:[139]NC[177]8[167]674 676 [129]J[178]1[164]NC:[153]"POSITION OF COLUMN #";J:[153]"? CMDCMDCMD";PC(J) 678 [133]"ON";PC(J):[130]J 680 [153]"LOADHEADING FORMATWAIT COLUMN HEADINGS CANNOT" 682 [153]"EXCEED WIDTH OF COLUMNS:" 684 [129]J[178]1[164]NC:[153]"COLUMN";J;" HEADING"; 686 [139]J[178]NC[167][153]80[171]PC(J);:[137]690 688 [153]PC(J[170]1)[171]2[171]PC(J); 690 [153]" CHARACTERS WIDE" 692 [153]"? > CMDCMDCMD";HC$(J):[133]"ON";HC$(J):[139]HC$(J)[178]""[167]HC$(J)[178]">" 694 [130]J 696 [153]"LOADCHOOSE WHICH FIELDS GO UNDER THE COLUMNS" 698 [153]"ENTER 0WAIT IF ADDITIONAL FIELDS ARE":[153]"NOT DESIRED." 700 [129]N[178]1[164]F:[153]"";N;"WAIT ";F$(N):[130]N 702 [129]J[178]1[164]NC:[153]"";[163]25)"COLUMN";J;"" 704 [129]L[178]1[164]3:[153][163]25)"ONFIELD";L;" 0 CMDCMD";ML$(J,L) 706 [153][163]32);"ON";:[133]ML$(J,L):[130]L:[130]J 708 [153]"LOADDO YOU WISH TO SUM THE DATA IN COLUMN"[170][196](NC)[170]"?" 709 [153]"THIS COLUMN MUST ONLY BE FORMATTED WITH" 710 [153]"ONLY ONE FIELD. ENTER 1WAIT (YES) OR 0WAIT (NO)" 711 [153]"?";Z:[133]"ON";Z 712 [153]"LOADDO YOU WISH TO REVIEW YOUR FORMAT AND/OR" 714 [153]"MAKE CORRECTIONS? PRESS YWAIT OR NWAIT" 716 [161]A$:[139]A$[178]""[167]716 718 [139]A$[178]"Y"[167]646 720 [139]A$[178]"N"[167]726 722 [137]716 724 [143] SAVE REPORT FORMAT 726 [153]" SAVE FORMATWAIT? YWAIT OR NWAIT" 728 [161]A$:[139]A$[178]""[167]728 730 [139]A$[178]"N"[167]538 732 [139]A$[178]"Y"[167]736 734 [137]728 736 [153]"SAVE UNDER WHAT FILE NAME?" 738 [153]" ";NF$:[133]"ON";NF$:[139]NF$[178]""[167]614 740 [159]15,8,15:[152]15,"S0:RP] "[170]NF$:[141]876:[139]ET[178]8[167]614 742 [159]5,8,5,"0:RP] "[170]NF$[170]",S,W":[141]876:[139]ET[178]8[167]614 744 [152]5,PW;CR$;NL;CR$;NC:[141]876:[139]ET[178]8[167]614 746 [129]J[178]1[164]NL 748 [152]5,TT$(J):[141]876:[139]ET[178]8[167]614 750 [130]J 752 [129]I[178]1[164]NC 754 [152]5,PC(I);CR$;HC$(I):[141]876:[139]ET[178]8[167]614 756 [129]N[178]1[164]3 758 [152]5,ML$(I,N):[141]876:[139]ET[178]8[167]614 760 [130]N:[130]I:[152]5,[196](Z);CR$;E$:[141]876:[139]ET[178]8[167]614 762 [160]5:[160]15:[137]538 764 [143] LOAD REPORT FORMAT 766 [153]"LOAD FORMAT FROM WHAT FILE?" 768 [153]" ";NF$:[133]"ON";NF$:[139]NF$[178]""[167]614 770 [159]15,8,15:[159]5,8,5,"0:RP] "[170]NF$[170]",S,R":[141]876:[139]ET[178]8[167]614 771 [139]EN[178]62[167][141]878:[137]614 772 [132]5,PW,NL,NC:[141]876:[139]ET[178]8[167]614 774 [129]J[178]1[164]NL 776 [132]5,TT$(J):[141]876:[139]ET[178]8[167]614 778 [130]J 780 [129]I[178]1[164]NC 782 [132]5,PC(I),HC$(I):[141]876:[139]ET[178]8[167]614 784 [129]N[178]1[164]3 786 [132]5,ML$(I,N):[141]876:[139]ET[178]8[167]614 788 [130]N:[130]I:[132]5,A1$:Z[178][197](A1$) 790 S[178]ST:[139]S[179][177]0[167]794 792 [132]5,E$ 794 [160]5:[160]15:[137]712 796 [143] PRINT NONFORMATTED LISTING 798 [152]4,"[ RECORD #";I;" ]";:[129]J[178]1[164]62:[152]4,"-";:[130]J:[152]4,B1$ 800 [129]N[178]1[164]F 802 [152]4,F$(N);:[129]J[178]1[164]20[171][195](F$(N)):[152]4,".";:[130]J 804 [152]4,REC$(K%(I),N) 806 [130]N:[152]4,B1$:[142] 808 [143] PRINT REPORT 810 PG[178]0:S$[178]"":[129]J[178]1[164]PW:S$[178]S$[170]B$:[130]J 812 [129]J[178]1[164]NL:[139]TT$(J)[179][177]">"[167][141]818 814 [130]J:[142] 816 [143] CENTER TITLE 818 B[178][181]((PW[171][195](TT$(J)))[173]2) 820 [152]4,[200](S$,B)[170]TT$(J);B1$:PG[178]PG[170]1:[142] 822 [143] POSITION HEADING 824 [141]838:PC(NC[170]1)[178]PW[170]3:CW[178]PC(2)[171]2[171]PC(1):[139]PC(1)[177]1[167]828 826 [152]4,[200](HC$(1),CW);:[137]830 828 [152]4,[200](S$,PC(1)[171]1)[170][200](HC$(1),CW); 830 [129]J[178]2[164]NC:M[178]PC(J)[171][195]([200](HC$(J[171]1),PC(J)[171]2[171]PC(J[171]1)))[171]PC(J[171]1) 832 [152]4,[200](S$,M)[170][200](HC$(J),PC(J[170]1)[171]2[171]PC(J)); 834 [130]J:[152]4,B1$:[141]838:PG[178]PG[170]3:[142] 836 [143] PRINT DASHED LINE 838 [129]J[178]1[164]PW:[152]4,"-";:[130]J:[152]4,B1$:[142] 840 [143] PRINT FILE DATA 842 F1[178][197](ML$(1,1)):F2[178][197](ML$(1,2)):F3[178][197](ML$(1,3)):CW[178]PC(2)[171]2[171]PC(1) 844 [139]PC(1)[177]1[167]850 846 [152]4,[200](REC$(K%(I),F1)[170]B$[170]REC$(K%(I),F2)[170]B$[170]REC$(K%(I),F3),CW); 848 [137]854 850 [152]4,[200](S$,PC(1)[171]1); 852 [152]4,[200](REC$(K%(I),F2)[170]B$[170]REC$(K%(I),F2)[170]B$[170]REC$(K%(I),F3),CW); 854 [129]J[178]2[164]NC:CW[178]PC(J)[171]2[171]PC(J[171]1) 856 F1[178][197](ML$(J[171]1,1)):F2[178][197](ML$(J[171]1,2)):F3[178][197](ML$(J[171]1,3)) 858 M[178][195]([200](REC$(K%(I),F1)[170]B$[170]REC$(K%(I),F2)[170]B$[170]REC$(K%(I),F3),CW)) 860 M[178]PC(J)[171]M[171]PC(J[171]1):CW[178]PC(J[170]1)[171]2[171]PC(J) 862 [152]4,[200](S$,M); 864 F1[178][197](ML$(J,1)):F2[178][197](ML$(J,2)):F3[178][197](ML$(J,3)) 866 [152]4,[200](REC$(K%(I),F1)[170]B$[170]REC$(K%(I),F2)[170]B$[170]REC$(K%(I),F3,CW); 868 [130]J:[152]4,B1$:PG[178]PG[170]1 870 [139]PG[178]60[167][129]J[178]1[164]6:[152]4,B1$:[130]J:PG[178]0:[141]824 872 [142] 874 [143] DISK ERROR CHECK 876 [132]15,EN,EM$,ET,ES:[139](EN[179]20)[176](EN[178]62)[167]ET[178]0:[142] 878 [153]" DISK ERRORWAIT"EN"CMD, "EM$","ET"CMD,"ES 880 [153]" PRESS ANY KEYWAIT TO RETURN TO MENU" 882 [161]A$:[139]A$[178]""[167]882 884 ET[178]8:[160]5:[160]15:[142] 886 [143] ADD LAST COLUMN 888 [139]Z[179][177]1[167][142] 889 A0[178]A0[170][197](REC$(K%(I),[197](ML$(NC,1)))):[142] 890 [139]Z[179][177]1[167][152]4,B1$:[137]538 892 [152]4,[200](S$,PC(NC)[171]1); 894 [129]I[178]1[164]PW[171]PC(NC)[170]1:[152]4,"-";:[130]I:[152]4,B1$ 896 [152]4,[200](S$,PC(NC)[171]9)[170]"TOTAL= "[170][196](A0) 898 [152]4,B1$:[137]538